#!/usr/bin/env python
#encoding=utf8
"""
@描述：模拟reducer的执行过程，求top 2
	   1.若是java可以在reduce输出后封装到一个类结构中，这个结构实现comparable接口
		 输出就是有序的，分别取head 100,然后排序输出结果
	   2.在reduce类中维护一个数组空间[100]，每一个reduce结束后都去跟数据对比，之后输出的
		 就是100个最大的值
	   3.第三种就是使用全排序
@日期：2015年02月03日 星期二

@作者：hognxingfan
"""

import sys

KV = dict()

if __name__ == "__main__":
	while(True):
		line = sys.stdin.readline()
		if(not line):
			break
		line = line.strip()
		cols = line.split("\t")
		key = cols[0]
		value = int(cols[1])
		if(key in KV):
			KV[key] += value
		else:
			KV[key] = value

	for(k,v) in sorted(KV.iteritems(),key = lambda x:x[1],reverse=True):
		sys.stdout.write(k + "\t" + str(v) + "\n")
